gusucode.com > VC++ 密码探测器 > VC++ 密码探测器/gusucode/PwdSpy/PwdSpy.cpp
// PwdSpy.cpp : Defines the class behaviors for the application. // #include "stdafx.h" #include "PwdSpy.h" #include "PwdSpyDlg.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CPwdSpyApp BEGIN_MESSAGE_MAP(CPwdSpyApp, CWinApp) //{{AFX_MSG_MAP(CPwdSpyApp) //}}AFX_MSG ON_COMMAND(ID_HELP, CWinApp::OnHelp) END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CPwdSpyApp construction CPwdSpyApp::CPwdSpyApp() { } ///////////////////////////////////////////////////////////////////////////// // The one and only CPwdSpyApp object CPwdSpyApp theApp; ///////////////////////////////////////////////////////////////////////////// // CPwdSpyApp initialization BOOL CPwdSpyApp::InitInstance() { if(!m_si.Create(MUTEX_NAME)) { //如果找到另外一个实例,将其带到前面 UINT nMsgID = RegisterWindowMessage(CUSTOM_WNDMSG); PostMessage(HWND_BROADCAST, nMsgID, 0, 0); return FALSE; } // Standard initialization // If you are not using these features and wish to reduce the size // of your final executable, you should remove from the following // the specific initialization routines you do not need. #ifdef _AFXDLL Enable3dControls(); // Call this when using MFC in a shared DLL #else Enable3dControlsStatic(); // Call this when linking to MFC statically #endif CPwdSpyDlg dlg; m_pMainWnd = &dlg; dlg.DoModal(); // Since the dialog has been closed, return FALSE so that we exit the // application, rather than start the application's message pump. return FALSE; }